Windows Driver Frameworks
   HOME

TheInfoList



OR:

Windows Driver Frameworks (WDF, formerly Windows Driver Foundation), is a set of Microsoft tools and libraries that aid in the creation of device drivers for
Windows 2000 Windows 2000 is a major release of the Windows NT operating system developed by Microsoft and oriented towards businesses. It was the direct successor to Windows NT 4.0, and was Software release life cycle#Release to manufacturing (RTM), releas ...
and later versions of Windows. It complements
Windows Driver Model In computing, the Windows Driver Model (WDM) also known at one point as the Win32 Driver Model is a framework for device drivers that was introduced with Windows 98 and Windows 2000 to replace VxD, which was used on older versions of Windows such a ...
, abstracting away much of the boilerplate complexity in writing Windows drivers. WDF consists of
Kernel-Mode Driver Framework The Kernel-Mode Driver Framework (KMDF) is a driver framework developed by Microsoft as a tool to aid driver developers create and maintain kernel mode device drivers for Windows 2000 and later releases. It is one of the frameworks included in th ...
(KMDF) and
User-Mode Driver Framework User-Mode Driver Framework (UMDF) is a device-driver development platform first introduced with Microsoft's Windows Vista operating system, and is also available for Windows XP. It facilitates the creation of drivers for certain classes of device ...
(UMDF).Kernel Mode Driver Framework for Windows 7 Drivers
/ref> These individual frameworks provide a new object-oriented programming model for Windows driver development. The primary goals of WDF is conceptual scalability and reduced duplication, enabling developers to apply the same concepts across different driver types and reducing the code overhead required for drivers. This differs markedly from the Windows Driver Model (WDM) which requires driver developers to be fully familiar with many complex technical details to write a basic driver. Part of the key to achieving conceptual scalability is that KMDF and UMDF use an "opt-in" model. This model allows the developer to extend and override the default behavior of a canonical "good driver". In contrast, Windows Driver Model depends on the driver writer to implement all aspects of the driver's behavior.


Varieties

There are three types of WDF drivers: *
Kernel-Mode Driver Framework The Kernel-Mode Driver Framework (KMDF) is a driver framework developed by Microsoft as a tool to aid driver developers create and maintain kernel mode device drivers for Windows 2000 and later releases. It is one of the frameworks included in th ...
, for writing standard kernel-mode device drivers *
User-Mode Driver Framework User-Mode Driver Framework (UMDF) is a device-driver development platform first introduced with Microsoft's Windows Vista operating system, and is also available for Windows XP. It facilitates the creation of drivers for certain classes of device ...
v1, for writing user-mode drivers using a C++
COM Com or COM may refer to: Computing * COM (hardware interface), a serial port interface on IBM PC-compatible computers * COM file, or .com file, short for "command", a file extension for an executable file in MS-DOS * .com, an Internet top-level d ...
-based API *
User-Mode Driver Framework User-Mode Driver Framework (UMDF) is a device-driver development platform first introduced with Microsoft's Windows Vista operating system, and is also available for Windows XP. It facilitates the creation of drivers for certain classes of device ...
v2, for writing user-mode drivers with syntactic parity to KMDF WDF also includes a set of static verification tools for use by driver writers. These tools examine driver code for common errors and/or simulate the code of a driver in order to identify problems that are both difficult to detect and difficult to test for.


Versions

Bold "Yes" means introduced with this version of Windows.


See also

*
Windows Driver Kit The Windows Driver Kit (WDK) is a software toolset from Microsoft that enables the development of device drivers for the Microsoft Windows platform. It includes documentation, samples, build environments, and tools for driver developers. A comple ...


References


External links

* *
Developing Drivers with the Windows Driver Foundation
' by Orwick and Smith
Windows Driver Kit

OSR Online
including many articles about WDF, KMDF, and Windows driver development * , written by well-known Windows driver developer, Walter Oney
Building and deploying a basic WDF Kernel Mode Driver
CodeProject
Developing a WDF USB Kernel Mode Driver for the OSR USB FX2
CodeProject {{Microsoft FOSS Device drivers Free and open-source software Driver Foundation Microsoft free software Software using the MIT license Windows-only free software